<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // var arr = ["hello", 2, 3, 4, "world"];

  // console.log( arr[4] );

  // // 增：给数组不存在的位置，主动设置数据
  // arr[5] = "haha";
  // console.log( arr[10] );
  // arr[10] = "heihiehiehi";

  // // 改：重新赋值
  // arr[0] = "你好";

  // // 查：根据要查询数据的索引，查询数据
  // console.log( arr[2] );

  // // 删：修改数组的长度
  // arr.length = 3;

  // console.log(arr);
  // console.log(arr.length);





  // 默认情况下，增加数据，只能在数组的最后新增
  var arr = ["hello", 7, 8, 9, "world"];
  // arr[5] = "哈哈";
  // console.log(arr);
  
  // 需求：索引为 2 的位置插入"哈哈"

  // // 挪出要插入数据的位置
  // arr[5] = arr[4];
  // arr[4] = arr[3];
  // arr[3] = arr[2];
  // // 将要入的数据，设置到指定位置
  // arr[2] = "哈哈"

  // 在指定数组的指定位置插入指定数据
  function insert(arr, n, data){
    for(var i=arr.length; i>n; i--){
      arr[i] = arr[i-1];
    }
    arr[n] = data;
  }

  // insert(arr, 1, 100);
  
  // insert(arr, 3, 666);
  
  // insert(arr, 10, 777);

  console.log(arr);

  // ==========

  // var arr = ["hello", 7, 8, 9, "world"];

  // 数组的长度减少时，从数组的末尾开始删除
  // arr.length = arr.length - 1;

  // 需求：删除索引为 1 的数据
  // 将索引1后的数据，依次向前覆盖
  // arr[1] = arr[2];
  // arr[2] = arr[3];
  // arr[3] = arr[4];
  // 减少数组的长度
  // arr.length--;

  // 删除指定数组的指定位置的数据
  function remove( arr, n ){
    for(var i=n;i<arr.length-1; i++ ){
      arr[i] = arr[i+1];
    }
    arr.length--;
  }

  // remove(arr, 2)

  // remove(arr, 2)

  // console.log(arr)









</script>
</html>